Intuición

El clasificador de naive Bayes es un método de clasificación bastante utilizado cuando se tienen conjuntos de datos pequeños .

El método se encuentra basado en el teorema de bayes que se encuentra enunciado a continuación.

\[P(A|x)=\frac{P(x|A)P(A)}{P(x)}\]

  • \(P(A|x)\) \(x\) es una entrada nueva de datos y se quiere mirar la probabilidad que esta pertenezca a la clase \(A\)

  • \(P(x|A)\) Probabilidad de que nuestros la categoría \(A\) tenga entradas de datos.

  • \(P(A)\) Es la probabilidad completa en la clase A.

  • \(P(x)\) Evidencia.

Consiste en analizar a cual clase pertenece un individuo basado en la probabilidad total de que este pertenezca a cada una de las categorías posibles, de forma que la probabilidad de pertenencia es encontrada teniendo en cuenta las probabilidades de que cada una de las características del individuo debe cumplir para estar en aquella categoría se cumplan de forma individual.

Nota: Las variables usadas como predictoras deben ser categorías.

Implementación en R

library(kableExtra)
## Warning: package 'kableExtra' was built under R version 3.5.2
base <- read.csv("../Bases de datos/electronics-purchase.csv")
kable(head(base),"markdown")
Education Gender Smart_ph Tablet Purchase
C M N N No
B F Y Y Yes
A M N Y No
C M Y Y Yes
C M Y N No
C M Y N No
library(naivebayes)
## Warning: package 'naivebayes' was built under R version 3.5.2
mod <- naive_bayes(Purchase~., base)
mod
## ================================ Naive Bayes ================================= 
## Call: 
## naive_bayes.formula(formula = Purchase ~ ., data = base)
## 
## A priori probabilities: 
## 
##  No Yes 
## 0.5 0.5 
## 
## Tables: 
##          
## Education    No   Yes
##         A 0.375 0.250
##         B 0.250 0.375
##         C 0.375 0.375
## 
##       
## Gender    No   Yes
##      F 0.375 0.500
##      M 0.625 0.500
## 
##         
## Smart_ph    No   Yes
##        N 0.500 0.375
##        Y 0.500 0.625
## 
##       
## Tablet    No   Yes
##      N 0.750 0.125
##      Y 0.250 0.875

En los resultados anteriores se puede observar cómo cada variable predictora influye en la decisión (si o no).